home *** CD-ROM | disk | FTP | other *** search
- Path: merle.acns.nwu.edu!judd
- From: judd@merle.acns.nwu.edu (Stephen Judd)
- Newsgroups: comp.sys.cbm
- Subject: Polygonamy (Flaws and all)
- Date: 6 Feb 1996 19:04:43 GMT
- Organization: Northwestern University, Evanston IL
- Message-ID: <4f88ob$gst@news.acns.nwu.edu>
- Reply-To: sjudd@nwu.edu (Stephen Judd)
- NNTP-Posting-Host: merle.acns.nwu.edu
-
- Well... for what it's worth, here is Polygonamy. I am out of time
- and also out of memory (there are 512 bytes free between $CE00 and $CFFF),
- so the program is not as good as it could be. Ah well, it's purpose was
- to test some ideas I had, and explore their limitations.
-
- There are three objects in the world. I wanted to do five but ran out
- of memory (I could get some large chunks back with a little code rewrite).
- One of the objects is static, the others are in motion.
-
- There are still some rough edges, which I have tried to fudge around.
- Unfortunately they only became apparent at the very end.
-
- To measure how many frames per second the program is getting, move up to
- the first object. Every 360 degrees is 128 frames, so if you time a
- full revolution (or two or three) and divide into 128 (times the number
- of revolutions you have just timed), you will get a good frames per
- second estimate.
-
- Well, here is a little blurb I wrote while in higher spirits:
-
-
- Polygonamy
- ----------
- A study in three dimensions.
-
- by Stephen L. Judd --> sjudd@nwu.edu
-
- My goal was to create a 3D virtual world for the C64, e.g. a space
- populated with various three-dimensional objects, which I could wander around
- in. I wanted it to be full-screen 320x200 hires bitmapped. Furthermore, I
- wanted the objects to be solid, and since there are only two colors I
- wanted to be able to put patterns on the faces. Finally, naturally, I
- wanted the program to be fast. This was the framework in which I placed
- myself.
-
- Just a brief history of this project: I have wanted to do a 3D
- world for a very long time, and have been thinking about it for some
- time in the back of my head; my imagination was probably first fired
- the first time I played Elite. I wrote down the necessary equations one
- afternoon last summer, for a high school student I was teaching, and
- the equations are very simple. I took a break to get some work of
- measureable value accomplished, but in October I began work on the
- graphics algorithm, which was very tough! I worked steadily on this for
- two months, and in December I finally began to code the graphics. In mid
- January, I got them to work. Adding the rest took a few weekends more.
- I have about 128 pages of notes, diagrams, analytical calculations, and
- BASIC test programs in my C64 notebook; this is my most ambitious project
- to date and I hope you enjoy the results.
-
- One caveat before we begin: I am primarily interested in the
- challenge of designing the algorithms, which means I like to come up
- with my own solutions. Thus, you may find more efficient methods
- in a graphics book or perhaps in someone else's code; I have examined
- neither, so I have no idea what the relative merit of my algorithms
- may be. These are simply my solutions to challenges placed before me.
- And if you know of a better way to do things, please feel free to email
- me!
-
- (code to follow in the next posting)
-
- evetS-
-